
//2748.美丽下标对的数目
class Solution {
public:
    int countBeautifulPairs(vector<int>& nums) {
        int n=nums.size();
        int m[10]={0};   //统计第一位数字的个数

        auto head=[](int x)  //求出第一位的数字
        {
            while(x>=10) x/=10;
            return x;
        };

        int ret=0;
        for(int i=0;i<n;i++)
        {
            int tail=nums[i]%10;   

            for(int i=1;i<10;i+=1)   //循环,在1-9之间找互质的个数
            if(gcd(i,tail)==1) ret+=m[i];

            m[head(nums[i])]++;
        }
        return ret;
    }
};